home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1997 / MacHack 1997.toast / Hacks / Hacks ’97 / Finder Dungeon / source code / MoreFiles 1.4.6 / BuildMoreFiles < prev    next >
Encoding:
Text File  |  1997-06-28  |  5.4 KB  |  186 lines  |  [TEXT/MPS ]

  1. #    BuildMoreFiles - build MoreFiles
  2. #
  3. #    Usage:
  4. #        BuildMoreFiles [ProcessorOptions] [SymOptions]
  5. #            ProcessorOptions
  6. #                -68K | -PPC | -FAT        # build for 68K, PPC, or both
  7. #                                        # (default is -FAT)
  8. #            SymOptions
  9. #                -sym off | on | both    # build with MacsBug symbols and
  10. #                                        # symbolic records, or build
  11. #                                        # with code optimizations
  12. #                                        # (default is both)
  13. #
  14. #    The BuildMoreFiles script builds MoreFiles libraries.
  15. #
  16. #    Make is used to generate the build commands using MoreFilesLib.make.
  17. #
  18. #    The options specified control which options are passed to Make, and
  19. #    control the generation of the build commands.
  20. #
  21. #
  22. #    Copyright © 1996, Apple Computer, Inc.
  23. #    All rights reserved.
  24.  
  25. Set Exit 0
  26. Export Exit
  27. Set TraceFailures 1
  28. Export TraceFailures
  29. #Set Echo 1
  30. #Export Echo
  31.  
  32. Set Usage    "# BuildMoreFiles - Usage: BuildMoreFiles [ProcessorOptions] [SymOptions]∂n∂
  33. #                           ProcessorOptions∂n∂
  34. #                             -68K | -PPC | -FAT    # build for 68K, PPC, or both∂n∂
  35. #                                                   # (default is -FAT)∂n∂
  36. #                           SymOptions∂n∂
  37. #                             -sym off | on | both  # build with MacsBug symbols and∂n∂
  38. #                                                   # symbolic records, or build∂n∂
  39. #                                                   # with code optimizations∂n∂
  40. #                                                   # (default is both)"
  41.  
  42. #
  43. # Set up default usage
  44. #
  45. Set SymOptions "both"                # default to building with and without debugging symbols
  46. Set    BuildTarget "MoreFilesLib.FAT"    # default to building both 68K and PPC libraries
  47.  
  48. #
  49. # Get parameters (if any)
  50. #
  51. Loop
  52.     If "{#}" == 0
  53.         Break
  54.     End
  55.     
  56.     If "{1}" =~ /-sym/
  57.         Shift 1
  58.         If "{#}" == 0
  59.             Echo "{Usage}"
  60.             Beep
  61.             Exit 1
  62.         End
  63.         If "{1}" =~ /off/
  64.             Set SymOptions "off"
  65.             Shift 1
  66.         Else If "{1}" =~ /on/
  67.             Set SymOptions "on"
  68.             Shift 1
  69.         Else If "{1}" =~ /both/
  70.             Set SymOptions "both"
  71.             Shift 1
  72.         Else
  73.             Echo "{Usage}"
  74.             Beep
  75.             Exit 1
  76.         End
  77.     Else If "{1}" =~ /-68K/
  78.         Set    BuildTarget "MoreFilesLib.o"
  79.         Shift 1
  80.     Else If "{1}" =~ /-PPC/
  81.         Set    BuildTarget "MoreFilesLib.PPC"
  82.         Shift 1
  83.     Else If "{1}" =~ /-FAT/
  84.         Set    BuildTarget "MoreFilesLib.FAT"
  85.         Shift 1
  86.     Else
  87.         Echo "{Usage}"
  88.         Beep
  89.         Exit 1
  90.     End
  91. End
  92.  
  93. #
  94. # Do it
  95. #
  96.  
  97. If "{BuildTarget}" =~ /MoreFilesLib.o/
  98.     If ( ({SymOptions} =~ /off/) || ({SymOptions} =~ /both/) )
  99.         # Get rid of old object files (if any)
  100.         (Delete `(files :Objects:≈.o || Set Status 0) ≥ dev:null` || Set Status 0) ≥ dev:null
  101.         # build 68K/symbols off/optimization on
  102.         make -f MoreFilesLib.make ∂
  103.             -d MacsBugSyms='-mbg off' ∂
  104.             -d SymbOptions='-sym off' ∂
  105.             -d COptOptions='-opt on' ∂
  106.             MoreFilesLib.o ∂
  107.             > MoreFilesLib.makeout
  108.         MoreFilesLib.makeout
  109.         Delete MoreFilesLib.makeout
  110.     End
  111.     If ( ({SymOptions} =~ /on/) || ({SymOptions} =~ /both/) )
  112.         # Get rid of old object files (if any)
  113.         (Delete `(files :Objects:≈.o || Set Status 0) ≥ dev:null` || Set Status 0) ≥ dev:null
  114.         # build 68K/symbols on/optimization off (debug version)
  115.         make -f MoreFilesLib.make ∂
  116.             -d MacsBugSyms='-mbg on' ∂
  117.             -d SymbOptions='"-sym on' ∂
  118.             -d COptOptions='-opt off' ∂
  119.             -d DebugTarget='(d)' ∂
  120.             MoreFilesLib.o ∂
  121.             > MoreFilesLib.makeout
  122.         MoreFilesLib.makeout
  123.         Delete MoreFilesLib.makeout
  124.     End
  125. Else If "{BuildTarget}" =~ /MoreFilesLib.PPC/
  126.     If ( ({SymOptions} =~ /off/) || ({SymOptions} =~ /both/) )
  127.         # Get rid of old object files (if any)
  128.         (Delete `(files :ObjectsPPC:≈.x || Set Status 0) ≥ dev:null` || Set Status 0) ≥ dev:null
  129.         # build PPC/symbols off/optimization on
  130.         make -f MoreFilesLib.make ∂
  131.             -d SymbOptions='-sym off' ∂
  132.             -d MrCOptOptions='-opt speed' ∂
  133.             MoreFilesLib.PPC ∂
  134.             > MoreFilesLib.makeout
  135.         MoreFilesLib.makeout
  136.         Delete MoreFilesLib.makeout
  137.     End
  138.     If ( ({SymOptions} =~ /on/) || ({SymOptions} =~ /both/) )
  139.         # Get rid of old object files (if any)
  140.         (Delete `(files :ObjectsPPC:≈.x || Set Status 0) ≥ dev:null` || Set Status 0) ≥ dev:null
  141.         # build PPC/symbols on/optimization off (debug version)
  142.         make -f MoreFilesLib.make ∂
  143.             -d SymOptions='-sym on' ∂
  144.             -d MrCOptOptions='-opt off' ∂
  145.             -d DebugTarget='(d)' ∂
  146.             MoreFilesLib.PPC ∂
  147.             > MoreFilesLib.makeout
  148.         MoreFilesLib.makeout
  149.         Delete MoreFilesLib.makeout
  150.     End
  151. Else If "{BuildTarget}" =~ /MoreFilesLib.FAT/
  152.     If ( ({SymOptions} =~ /off/) || ({SymOptions} =~ /both/) )
  153.         # Get rid of old object files (if any)
  154.         (Delete `(files :Objects:≈.o || Set Status 0) ≥ dev:null` || Set Status 0) ≥ dev:null
  155.         (Delete `(files :ObjectsPPC:≈.x || Set Status 0) ≥ dev:null` || Set Status 0) ≥ dev:null
  156.         # build FAT/symbols off/optimization on
  157.         make -f MoreFilesLib.make ∂
  158.             -d MacsBugSyms='-mbg off' ∂
  159.             -d SymOptions='-sym off' ∂
  160.             -d COptOptions='-opt on' ∂
  161.             -d MrCOptOptions='-opt speed' ∂
  162.             MoreFilesLib.FAT ∂
  163.             > MoreFilesLib.makeout
  164.         MoreFilesLib.makeout
  165.         Delete MoreFilesLib.makeout
  166.     End
  167.     If ( ({SymOptions} =~ /on/) || ({SymOptions} =~ /both/) )
  168.         # Get rid of old object files (if any)
  169.         (Delete `(files :Objects:≈.o || Set Status 0) ≥ dev:null` || Set Status 0) ≥ dev:null
  170.         (Delete `(files :ObjectsPPC:≈.x || Set Status 0) ≥ dev:null` || Set Status 0) ≥ dev:null
  171.         # build FAT/symbols on/optimization off (debug version)
  172.         make -f MoreFilesLib.make ∂
  173.             -d MacsBugSyms='-mbg on' ∂
  174.             -d SymOptions='-sym on' ∂
  175.             -d COptOptions='-opt off' ∂
  176.             -d MrCOptOptions='-opt off' ∂
  177.             -d DebugTarget='(d)' ∂
  178.             MoreFilesLib.FAT ∂
  179.             > MoreFilesLib.makeout
  180.         MoreFilesLib.makeout
  181.         Delete MoreFilesLib.makeout
  182.     End
  183. End
  184.  
  185. Beep
  186.